home *** CD-ROM | disk | FTP | other *** search
/ BBS Toolkit / BBS Toolkit.iso / programs / timb8.zip / TIMED.DOC < prev    next >
Text File  |  1993-02-25  |  66KB  |  1,954 lines

  1.  
  2.               ===========================================
  3.  
  4.                               timEd/beta
  5.  
  6.                        A message editor for Squish
  7.  
  8.                (C) 1992,93  Gerard van Essen (2:281/527)
  9.  
  10.               ===========================================
  11.  
  12.  
  13.  
  14. !  timEd uses the Squish MSGAPI by Scott Dudley.
  15.  
  16. !  Squish is a trademark of Scott J. Dudley
  17.  
  18. !  timEd uses Ralf Brown's swapping 'spawn' replacement (SPAWNO)
  19.  
  20. !  timEd's screen writing routines are partly based on code from
  21.    jim nutt and Erik Vanriper.
  22.  
  23. !  timEd uses Mark Potter's DVAWARE routines.
  24.  
  25.  
  26. ┌─────────┐
  27. │ History │
  28. └─────────┴──────────────────────────────────────────────────────────
  29.  
  30. (Warning: this part doesn't contain any useful info, 'quick starters'
  31. should skip this.. :-)
  32.  
  33. TimEd is one of those programs that 'were never meant to be'.
  34.  
  35. When Scott Dudley released Maximus 2.00 and Squish 1.00, I immediately
  36. switched (from Qmail, *.MSG) to the much more advanced Squish message
  37. base format. However, initially there were no message editors available,
  38. so I had to use Maximus itself to read the mail. Although this went
  39. reasonably well, it wasn't really fast and I missed some features
  40. ('netmail reply' being the most important one).
  41.  
  42. When Scott released the MSGAPI (and I had just bought my Turbo C
  43. compiler :-) I played with it a bit, and decided to make a message
  44. viewer (yes, viewer only!).
  45.  
  46. I got carried away.
  47.  
  48. Later several message editors for Squish were released, but I always
  49. found reasons not to switch (too large, too slow, too buggy, ugly,
  50. whatever :-).
  51.  
  52. I continued working on timEd, other people showed interest, got their
  53. copies and some of them even liked timEd!
  54. So.... I decided I would try to make a stable version, that could be
  55. released 'to the public' to check out the reactions (if any). Of course,
  56. a program is never ready (or without bugs), so I delayed it several
  57. times.
  58.  
  59. But this is it! This version has all the features I wanted my editor to
  60. have, in order to work comfortably. I am not very fond of programs that
  61. are full of 'bells and whistles', and you won't find many gee-whiz-bang
  62. features in timEd (although it does have some special things, like a
  63. built-in personal mail scanner and a nice 'Find' feature).
  64.  
  65.  
  66. ┌───────┐
  67. │ Beta! │
  68. └───────┴────────────────────────────────────────────────────────────
  69.  
  70.  
  71. Right! This is beta software (and apart from that: *I* wrote it! :-), so
  72. be careful!
  73. Before you run it, back up anything that is worth saving, make your will
  74. and warn your family and relatives.
  75.  
  76. There are no guarentees that timEd doesn't do anything terrible to your
  77. setup. Don't say I didn't warn you!
  78.  
  79. This documentation is also beta :-) I'm sure it lacks lots of info you are
  80. looking for, but will never find.
  81.  
  82.  
  83. ┌───────────┐
  84. │ Copyright │
  85. └───────────┴────────────────────────────────────────────────────────
  86.  
  87. * It's freeware, you don't have to pay me anything.
  88.  
  89. * Nobody should pay for timEd (to anyone!)
  90.  
  91. * Nobody should make money out of it (if you know a nice way to make a
  92.   fortune out of it, tell me, 'cause I want my share!)
  93.  
  94. * People are encouraged to reverse-engineer this program. Send me the
  95.   source you come up with :-)
  96.  
  97. * I would very much appreciate your opinion (either negative or
  98.   positive) about timEd. Just send me a message (even a very short
  99.   one!), so I will know what 'people' think of it.
  100.  
  101.  
  102. ┌───────────────┐
  103. │ Setting it up │
  104. └───────────────┴────────────────────────────────────────────────────
  105.  
  106. Installing timEd is easy. A working setup consists of three files:
  107.  
  108. timEd.exe (yes!)
  109. timEd.hlp (the helpfile)
  110. timEd.cfg (the configuration file)
  111.  
  112. A sample timEd.cfg is included, edit it to suit your needs. The keywords
  113. that can be used in the configuration file are explained below. Apart
  114. from that, the sample .cfg file is heavily commented.
  115.  
  116. In timEd, you can press F1 in most places to get help ('context
  117. sensitive', as we like to call it :-)
  118.  
  119. TimEd looks for the configuration and help files in the current
  120. directory (can be changed with the -C command line parameter).
  121.  
  122.  
  123. ┌───────────┐
  124. │ timEd.cfg │
  125. └───────────┴────────────────────────────────────────────────────────
  126.  
  127. The configuration file for timEd should be called timEd.cfg and must
  128. reside in the current directory, so timEd can find it (use the -C
  129. command line paramater otherwise).
  130.  
  131. It is a plain ASCII file and may contain comments. A comment is a line
  132. that starts with a semi-column, like this:
  133.  
  134. ; this is a comment.
  135.  
  136. Blank lines are ignored, all others should contain a keyword. Usually,
  137. in this form:
  138.  
  139. <keyword> <value> [value value]
  140.  
  141. So first the keyword, followed by the value of that keyword, optionally
  142. followed by more values..
  143.  
  144. The following keywords can be used in timEd.cfg:
  145.  
  146.  
  147. ADDRESS
  148. =======
  149.  
  150. Use this keyword to let timEd know what your address is. You can enter
  151. up to 10 of them, for your main address and AKA's.
  152.  
  153. The first one given will be the default address. If you want to use an
  154. AKA for a certain area, you must use the -P switch (see EchoArea
  155. keyword). -P switches found in a Squish configuration file will be
  156. recognized and used.
  157.  
  158. Example:
  159.  
  160. address          2:281/527
  161. address          2:500/133.999
  162.  
  163.  
  164. NAME
  165. ====
  166.  
  167. Type your name (and optionally aliases, just put in more NAME
  168. keywords) here. The NAME will be used in the FROM: field of every
  169. message you write.
  170.  
  171. The aliases will be used as extra names to look for in the personal
  172. mail scan (ALT-P from the area selection menu).
  173.  
  174. While in a message area, you can also pick one of your names to write
  175. messages with. Press CTRL-N to change the username from within timEd.
  176. The default is to use the first NAME found in timEd.cfg.
  177.  
  178. *Always* put the name between double quotes.
  179.  
  180. Example:
  181.  
  182. name       "Gerard van.Essen"
  183. alias      "Gerard van Essen"
  184.  
  185.  
  186. NODELIST
  187. ========
  188.  
  189. This tells timEd where it can find a Version 7 nodelist (used by
  190. BinkleyTerm and Portal of Power, for example).
  191.  
  192. The nodelist is very useful when entering netmail: timEd can look for
  193. addresses and SysOp names in the nodelist, to find the corresponding
  194. data of that node. (So, when entering a name, timEd will try to find
  195. the address, when entering an address, timEd will try to find the
  196. SysOp's name..).
  197.  
  198. The Version 7 nodelist can be produced by several programs, like
  199. Xlaxnode, Qnode and Fastlist.
  200. TimEd needs the files called SYSOP.NDX, NODEX.NDX and NODEX.DAT.
  201.  
  202. When looking up a SysOp-name, timEd will try to locate *all* matches for
  203. the (part of the) name entered. So, if you enter 'Essen', it might find
  204. both 'Gerard van Essen' and 'Martin Essenburg'.
  205.  
  206. If you use Qnode, and put 'Keep Allusers' in qnode.cfg, you can even get
  207. the same SysOp more than once, and pick one of their addresses (HUBs etc.
  208. often have more than one address).
  209.  
  210. I do not know if any other nodelist compilers can do the same thing.
  211.  
  212. Example:
  213.  
  214. nodelist    C:\Binkley\Nodelist
  215.  
  216.  
  217. FDNODELIST
  218. ==========
  219.  
  220. This tells timEd where it can find a FrontDoor nodelist (used by....
  221. FrontDoor! Yes!)
  222.  
  223. TimEd can use the files called USERNAME.FDX, NODELIST.FDX,
  224. NODELIST.xxx, FDNET.PVT and FDPOINT.PVT (the last two only if
  225. applicable, not required).
  226.  
  227. When looking up a SysOp-name, timEd will try to locate *all*
  228. matches for the (part of the) name entered. So, if you enter 'Essen',
  229. it might find both 'Gerard van Essen' and 'Martin Essenburg'.
  230.  
  231. With the frontdoor nodelist, you can always get the same SysOp name
  232. more than once, and pick one of their addresses (HUBs etc. often have
  233. more than one address). Unlike the Version 7 nodelist, duplicate SysOp
  234. names are always preserved in the index.
  235.  
  236.  
  237. Example:
  238.  
  239. FDnodelist    C:\Binkley\Nodelist
  240.  
  241.  
  242. ZoneGate
  243. ========
  244.  
  245. Format: ZoneGate <Yes | No | Ask>
  246.  
  247. It works as one would expect: when this is set to 'No' timEd won't do any
  248. zonegating, if it is set to 'Yes' it will zonegate all inter-zone messages,
  249. and if it is set to 'Ask', timEd will ask whether it should zonegate or
  250. not..
  251.  
  252. If you use Binkley with Squish, you can also let Squish handle it (that's
  253. what I do).
  254.  
  255. Whether or not you need zone-gating depends on the software used by the node
  256. that actually sends the messages from one zone to another. Check with your
  257. Boss, HUB, Host or who-ever knows.
  258.  
  259.  
  260. Kill_Original.
  261. ==============
  262.  
  263. Format: Kill_Original < Yes | No | Ask >
  264.  
  265. This controls whether you want timEd to delete a message, after you wrote a
  266. reply to it. (This is only functional in the netmail area). You can use
  267. this to keep your netmail area clean.
  268.  
  269.  
  270. AKAmatching.
  271. ============
  272.  
  273. Format: AKAmatching < Yes | No >
  274.  
  275. This option is interesting if you have more than 1 address. If you set this
  276. to 'Yes', timEd will try to find the most appropriate address to use when
  277. writing a message.
  278.  
  279. Say, for example, that you have two addresses: 2:281/527 and 60:100/112.
  280.  
  281. If you write a message to 2:500/133, you probably want to use your
  282. 2:281/527 address.
  283. If you write a message to 60:100/1, you probably want to use your
  284. 60:100/112 address.
  285.  
  286. In this case, timEd would try to find the address (AKA) that 'matches' the
  287. destination address best.
  288.  
  289. It first looks for a matching zone, and if more than one match is found,
  290. it'll try to find an address where both 'zone' and 'net' match. If there is
  291. still more than one match after that, it will just take the first match.
  292.  
  293. See the section about writing netmail for more info.
  294.  
  295.  
  296. ArcMailAttach.
  297. ==============
  298.  
  299. Format: ArcMailAttach < Yes | No >
  300.  
  301. This keyword is needed to support the 'Direct' message attribute for people
  302. that are running FrontDoor (and maybe D'Bridge too..).
  303.  
  304. For Binkley-users (where Squish packs the netmail) one must set both
  305. 'Crash' and 'Hold' to get the desired effect (that is: a message with the
  306. 'direct' flavour).
  307.  
  308. But when I tested that with FrontDoor, it didn't seem to like that at all
  309. (put it on hold, I think). So... for FD users timEd will add a 'FLAGS DIR'
  310. kludge, that should work (with FD, that is, Squish/Bink won't work well if
  311. you do it like that).
  312.  
  313. How does timEd know what system you run? It looks in your Squish.cfg, if it
  314. finds 'Arcmailattach', you are running FD, otherwise Binkley.
  315.  
  316. If, for some reason, timEd doesn't read a Squish.cfg, you can force
  317. 'Arcmailattach' by specifying:
  318.  
  319. ArcMailAttach Yes
  320.  
  321. Default is *not* ArcMailAttach.
  322.  
  323. So, in most situations, you do *not* need this. And if this is set wrong,
  324. it will only affect messages that have the 'direct' attribute set.
  325. FrontDoor will probably not send it..
  326.  
  327.  
  328. ORIGIN
  329. ======
  330.  
  331. This tells timEd what the default origin is. This line will appear at
  332. the bottom of every echomail message you write.
  333.  
  334. You can override this default on a per area basis (by pressing ALT-H
  335. in timEd, while you are in a message area).
  336. *Always* put the origin between double quotes.
  337.  
  338.  
  339. origin    "   Contrast BBS, 070-3234903 [V22..32bis]   "
  340.  
  341.  
  342. EDITOR
  343. ======
  344.  
  345. This tells timEd what editor you want to use to edit your messages.
  346. Whenever it is time to edit a message, timEd will execute this program.
  347. Entering a full path is not required (because timEd will look for the
  348. editor in your PATH), but speeds up things.
  349.  
  350. You can also use a batchfile here. You could use this to start up your
  351. editor with extra options, or to call other programs before or after the
  352. editor (a spell-checker maybe?).
  353.  
  354. Example:
  355.  
  356. Editor c:\misc\q.exe
  357.  
  358.  
  359. HELLO, REPHELLO
  360. ===============
  361.  
  362.  
  363. HELLO    : This defines the string to start a new message with. You
  364.            usually say 'hello' before you start a message, so this is
  365.            called 'hello' and will be referred to as 'hellostring'
  366.            throughout the documentation.
  367.  
  368. REPHELLO : This defines the string to start a reply with. This is usually
  369.            something like: 'In a message xxx wrote to yyy'. This will be
  370.            referred to as the 'rephello string'.
  371.  
  372. *Always* put the 'hello' and 'rephello' strings between double quotes.
  373.  
  374. There are four 'variables' that can be used in this string (and in the
  375. 'rephello' string as well):
  376.  
  377.  %to    : The full name of the person that the message IS addressed to
  378.           (for a new message) or that the original WAS addressed to (for
  379.           a reply, the REPHELLO keyword).
  380.  %fto   : As %to, but only the first name of that person.
  381.  
  382.  %from  : The full name of the person who wrote the original message (in
  383.           the case of a reply, so the REPHELLO keyword). In the case of
  384.           a new message this would be the name of the person who wrote
  385.           (writes) this new message (but that, of course, is you
  386.           yourself :-)
  387.  %ffrom : As %from, but only the first name of that person.
  388.  
  389. An example to clear up things:
  390.  
  391. Let's say I'm writing a message to Scott Dudley, so that's a new
  392. message, and the 'HELLO' keyword would be of significance here. The
  393. header would look like this:
  394.  
  395. -=-
  396.  
  397. From: Gerard van.Essen
  398. To  : Scott Dudley
  399. Subj: Your MSGAPI
  400.  
  401. -=-
  402.  
  403. In this case, %to == 'Scott Dudley' and %fto == 'Scott'.
  404.  
  405. If my timEd.cfg has:
  406.  
  407. hello           "Hello %to!"
  408.  
  409. My message would be started with:
  410.  
  411. Hello Scott Dudley!
  412.  
  413. Of course, because we treat everyone like our best friend in Fidonet, I
  414. have:
  415.  
  416. hello           "Hello %fto!"
  417.  
  418. As a result, my message will start with:
  419.  
  420. Hello Scott!
  421.  
  422. Right, that's the 'hellostring'. Now, let's say Scott receives my message,
  423. and decides to write something back. This will be a reply, so the
  424. 'rephello string' will be used.
  425.  
  426. Looking at our message again (the same one, as this is the message Scott
  427. is answering..):
  428.  
  429. -=-
  430.  
  431. From: Gerard van.Essen
  432. To  : Scott Dudley
  433. Subj: Your MSGAPI
  434.  
  435. -=-
  436.  
  437. In this case, %to   == 'Scott Dudley'     and %fto   == 'Scott'
  438.               %from == 'Gerard van.Essen" and %ffrom == 'Gerard'
  439.  
  440. Now if Scott uses timEd, *and* he has this in his timed.cfg:
  441.  
  442. rephello        "%from wrote in a message to %to:"
  443.  
  444. His reply would start with:
  445.  
  446. Gerard van.Essen wrote in a message to Scott Dudley:
  447.  
  448. And he can start typing..
  449.  
  450.  
  451. SIGNOFF
  452. =======
  453.  
  454. This tells timEd what should be placed at the end of every message. Most
  455. people always use the same 'signoff', so why not let timEd do it for
  456. you..
  457. *Always* put the 'signoff' message between double quotes.
  458.  
  459.  
  460. Signoff         "Groetjes, .......   === Art ==="
  461.  
  462.  
  463. In addition, you can also use \n in a string, to indicate a newline. So:
  464.  
  465. signoff  "Greetings,\n                Gerard"
  466.  
  467. expands to something like:
  468.  
  469. -=-
  470.  
  471. Greetings,
  472.               Gerard
  473.  
  474. -=-
  475.  
  476. Note, however, that strings longer than +/- 70 characters cannot be
  477. edited from within timEd (with ALT-H).
  478.  
  479.  
  480. ECHOLOG
  481. =======
  482.  
  483. Where to put the echotoss.log file (name + path). If this is specified,
  484. an echotoss.log file will be written when you exit timEd.
  485.  
  486. An echotoss.log file is a file containing a list with the areatags of
  487. areas that contain newly entered messages. You can pass this file to
  488. your tosser/scanner to scan out and pack these new messages. (For
  489. Squish, this is done by using the '-f' command line parameter).
  490.  
  491. Example:
  492.  
  493. EchoLog C:\timEd\echotoss.log
  494.  
  495.  
  496. WRITENAME
  497. =========
  498.  
  499. Here you can give the default filename the ALT-W (write message to
  500. file) function will write to. When actually writing to a file, you can
  501. of course edit this to be anything you want (this is just the
  502. default). You can also put PRN (or similar) in here, to write to a
  503. printer.
  504.  
  505. Example:
  506.  
  507. WriteName c:\timed\timout.txt
  508.  
  509.  
  510. PRINTER
  511. =======
  512.  
  513. Here you can tell timEd what port your printer is attached to. When using
  514. ALT-P from the message reading or list screen, timEd will send the message
  515. to what is listed here. The default (if you don't put this in timEd.cfg) is
  516. LPT1.
  517.  
  518. Example: Printer LPT2
  519.  
  520.  
  521. SHOWKLUDGES
  522. ===========
  523.  
  524. This tells timEd if you want to see the control information in the
  525. messages by default (or not..).
  526. For this purpose, 'kludges' includes real kludges (like MSGID, REPLY,
  527. PID, PATH etc.) but also SEEN-BY lines.
  528.  
  529. This is the setting at startup, you can toggle this setting from within
  530. timEd by pressing ALT-K or ALT-V when reading a message.
  531.  
  532. Example:
  533.  
  534. Showkludges Yes
  535.  
  536.  
  537. STARTUP_SCAN
  538. ============
  539.  
  540. This determines whether the message areas will be scanned for new mail at
  541. startup (value: Yes or No) or even for personal mail (value: Personal).
  542.  
  543. So, use either 'Yes', 'No' or 'Personal'.
  544.  
  545. Example:
  546.  
  547. Startup_Scan Yes
  548.  
  549.  
  550. SWAP_ON_EDIT, SWAP_ON_SHELL
  551. ===========================
  552.  
  553. These two statements determine timEd's behaviour when it calls other
  554. programs.
  555.  
  556. There are two options:
  557.  
  558. Yes : Swap timEd out of main memory when calling the other program. This
  559.       will only leave about 250 bytes of timEd in main memory, thus
  560.       making available a lot of memory for the other program to run in.
  561.  
  562. No  : Don't swap timEd out, load the other program in the memory
  563.       remaining, with timEd still in memory.
  564.  
  565. The second option takes up more memory, but is faster (no swapping has to
  566. take place). TimEd will be swapped to XMS, EMS or to Disk if no XMS/EMS
  567. is available. Swapping to disk is quite slow, of course..
  568.  
  569.  
  570. Swap_on_Edit:  Determines whether timEd is swapped out when the editor is
  571.                called to edit a message. This is done often, of course
  572.                (especially if you write a lot of mail :-), so if you
  573.                have enough memory to hold both timEd and the editor in
  574.                memory (and this is usually the case), I would set this
  575.                to 'No'.
  576.  
  577. Swap_on_Shell: Determines whether timEd is swapped out when shelling to
  578.                DOS, and when executing an external program by using the
  579.                ALT-U feature (message base maintenance). Usually speed is
  580.                not really important here, while lots of available memory
  581.                can be very useful, so it might be a nice idea to set this
  582.                to 'Yes'.
  583.  
  584.  
  585.  
  586. Ask_Confirmation
  587. ================
  588.  
  589. This controls whether timEd asks for confirmation before performing a
  590. certain action.
  591.  
  592. This is used at two places right now: 1) when deleting a message and 2)
  593. when exiting timEd, it'll ask for a confirmation when this is set to Yes.
  594.  
  595.  
  596. LASTREAD
  597. ========
  598.  
  599. TimEd supports multiple lastread pointers. This is necessary if you
  600. are not the only one using timEd on 1 machine (as the lastread
  601. pointers would have to be shared by 2 (or more) users then).
  602.  
  603. If you are the only one using the message base, or if you are the
  604. SysOp (and are consequently occupying the first position in the
  605. leastread file) you do not need this keyword.
  606.  
  607. This is usually the case, so most people don't need this keyword at
  608. all.
  609.  
  610. With this keyword, you can give the name of the lastread file for
  611. *.MSG areas. The default is "lastread".
  612.  
  613. Example:
  614.  
  615. LastRead lastrea1
  616.  
  617.  
  618. Squish_Offset
  619. =============
  620.  
  621. This is the equivalent of 'LastRead', but for Squish style areas.
  622.  
  623. You must give a number, that is the position of the lastread pointer
  624. in the *.SQL file (for Squish areas). For the first user this is 0
  625. (which is the default). If you are the second user you should set this
  626. to 1, if you're the third user you should set it to 2, etc.
  627.  
  628. Again: most people do *not* need this.
  629.  
  630. Example:
  631.  
  632. Squish_Offset 1
  633.  
  634. This would let timEd use the second lastread pointer in the .SQL files
  635. (Squish_Offset 0 would be the first, which is the default).
  636.  
  637.  
  638. MACRO
  639. =====
  640.  
  641. It works like this: in a netmail message, you enter a (short) name, that
  642. was also listed in timed.cfg using a 'macro' statement. TimEd will
  643. recognize this statement and expand it for you, saving you a lot of
  644. typing. This may include the 'to:' field, the address the message is
  645. sent to, and the subject.
  646.  
  647. Examples:
  648.  
  649. macro am,areamgr,2:281/520,my_pass
  650.  
  651.   When you enter 'am' in the 'to:' field, timEd will replace it with
  652.   'areamgr', and fill in the address (2:281/520) and subject (my_pass)
  653.   lines for you. So, a total of 3 items were listed after the macro name.
  654.  
  655.  
  656. macro et,Erik Troost,2:281/527.2
  657.  
  658.   This will expand to 'Erik Troost' with the address filled in. That's 2
  659.   items after the macro name.
  660.  
  661.  
  662. macro rvdn,ROn van der Nagel
  663.  
  664.   This will only expand the macro (rvdn) to ROn van der Nagel. Only 1
  665.   item listed behind the macro name.
  666.  
  667. Note that spaces are allowed in a macro statement. They are never
  668. stripped, so don't put them were you don't want them!
  669.  
  670.  
  671. COLOURS
  672. =======
  673.  
  674. Lots of colours can be specified by the user. The numbers specify the
  675. colour to be used.
  676.  
  677. Note: by default, timEd uses a monochrome setup. So if you don't have a
  678. colour monitor, you can initially leave all color_... statements out (in
  679. fact, you can do that with a colour monitor as well, it just looks very
  680. boring :-).
  681.  
  682.  
  683. The numbers are as follows:
  684.  
  685.               Foreground  Background
  686.  
  687.  BLACK           0            0
  688.  BLUE            1            16
  689.  GREEN           2            32
  690.  CYAN            3            48
  691.  RED             4            64
  692.  MAGENTA         5            80
  693.  BROWN           6            96
  694.  LIGHTGRAY       7            112
  695.  DARKGRAY        8            n.a.
  696.  LIGHTBLUE       9            n.a.
  697.  LIGHTGREEN     10            n.a.
  698.  LIGHTCYAN      11            n.a.
  699.  LIGHTRED       12            n.a.
  700.  LIGHTMAGENTA   13            n.a.
  701.  YELLOW         14            n.a.
  702.  WHITE          15            n.a.
  703.  BLINK          128           n.a.
  704.  
  705.  
  706. Now take the preferred colours of the foreground and the background of a
  707. certain item, and add them.
  708.  
  709. So, blue (foreground) on black (background) would be 1 + 0 = 1
  710.     lightgray on black is 7 + 0 = 7
  711.     white on blue is 15 + 16 = 31 etc.
  712.  
  713. Here are the colours you can define, and the keywords to use + my
  714. personal setting of these colours.
  715.  
  716. There are three main categories:
  717.  
  718. * color_as...
  719.  
  720. For the area selection screen, where you can select a message area to
  721. read. These colours will also be used for the message header list
  722. (ALT-L) and the file selection box that will appear when you use a
  723. 'wildcard' in the subject when doing a file attach.
  724.  
  725. * color_msg...
  726.  
  727. For the part where you will spend most time: the message reading screen.
  728.  
  729. * color_pop...
  730.  
  731. For popup-screens, like help screens and errors.
  732.  
  733.  
  734. Area selection screen settings
  735. ------------------------------
  736.  
  737. Area selection 'Title' Bar, at the top of the screen:
  738.  
  739. color_asbar     112
  740.  
  741. Area Selection Frame, the single line around the total screen:
  742.  
  743. color_asframe     4
  744.  
  745. Area Selection Normal Text, like the names of the areas:
  746.  
  747. color_astext      7
  748.  
  749. Area Selection Highlighted bar, the message area that is currently
  750. selected:
  751.  
  752. color_ashigh     31
  753.  
  754. Special colour, currently only used in a msg header list for personal
  755. messages:
  756.  
  757. color_asspecial  14
  758.  
  759.  
  760. Message reading screen settings
  761. -------------------------------
  762.  
  763. Message reader Header, like the From: and To: fields:
  764.  
  765. color_msgheader   7
  766.  
  767. Message reader horiz. line, between header and text:
  768.  
  769. color_msgline     9
  770.  
  771. Message reader quotes, quoted text (starting like GvE> ):
  772.  
  773. color_msgquote   14
  774.  
  775. Message reader normal text, the body of the message:
  776.  
  777. color_msgtext     7
  778.  
  779. Message reader 'Status' bar at bottom, with current msg area etc:
  780.  
  781. color_msgbar     31
  782.  
  783. Message reader origin, the origin of a message:
  784.  
  785. color_msgorigin 15
  786.  
  787. Message reader kludges (controlinfo like MSGID and SEEN-BY):
  788.  
  789. color_msgkludge  3
  790.  
  791. Message reader, the TO: field in the header for personal messages. Also used
  792. for 'highlights' in the message body when using the F)ind feature.
  793.  
  794. color_msgspecial 12
  795.  
  796.  
  797. Popup boxes settings
  798. --------------------
  799.  
  800. Popup boxes frame, the box around a popup text:
  801.  
  802. color_popframe 121
  803.  
  804. Popup boxes text, the text inside the box:
  805.  
  806. color_poptext 112
  807.  
  808.  
  809. SQUISHCFG
  810. =========
  811.  
  812. TimEd can read the Squish.cfg for you, and get all EchoArea lines from
  813. that configuration. Note that Netmail, bad_msgs and dupes are not read;
  814. you will have to define those manually, because you might not want them
  815. (dupes, bad_msgs) or usually want to specify special attributes for that
  816. area (netmail).
  817.  
  818. -P switches found in Squish.cfg will be recognized and used when
  819. creating a message.
  820.  
  821. Give full path and name of the file. If it contains an AreasBBS
  822. statement, the areas.bbs file will be read as well.
  823.  
  824. Squishcfg c:\squish\squish.cfg
  825.  
  826.  
  827. ECHOAREA, NETAREA
  828. =================
  829.  
  830. Area definition, Squish alike. You can specify areas in timEd.cfg as
  831. well, in addition to the areas found in Squish.cfg.
  832.  
  833. The squish.cfg file is read *after* these are read, however, so you can
  834. 'overrule' areas here (areas already defined in timEd.cfg will be
  835. skipped in squish.cfg and/or areas.bbs).
  836.  
  837. This is the only place where you can give a 'long' description of an
  838. area (can't do that in squish.cfg, of course) and where you can specify
  839. 'default message attributes' for newly created messages in that area.
  840.  
  841. It looks quite a bit like definitions in squish.cfg. There are 3
  842. keywords:
  843.  
  844. ■ EchoArea  - for echomail areas
  845. ■ NetArea   - for netmail areas (define as many as you want)
  846. ■ LocalArea - for local areas
  847.  
  848. The format for all of these:
  849.  
  850. <keyword> <description> <areatag> <location> [-Pxxx -Axx -$]
  851.  
  852. <keyword>     is NetArea, EchoArea or LocalArea.
  853. <description> is a description of the area, between double quotes
  854. <areatag>     is the offical areatag of the area (like: TUB)
  855. <location>    is the directory/basename where the area resides.
  856.  
  857. And where:
  858.  
  859. -$ is for squish areas
  860.  
  861. -A gives default attributes. (p = private, c = crash, k = killsent).
  862.  
  863. -Pz:nnn/nnn.p is the AKA to use for this area (also active for NetArea).
  864.  
  865.  
  866. Examples:
  867.  
  868. NetArea   "Netmail Area"   netmail      c:\fd\netmail         -Apk
  869.  
  870. My primary netmail area, with a nonsense areatag, is in *.MSG format and
  871. all messages get the 'private' and 'kill/sent' bits by default. The
  872. 'local' bit is always added to all messages as well.
  873.  
  874. NetArea   "Wlink netmail"  wlnk_net     c:\fd\wlink  -Ap -$ -P60:100/112
  875.  
  876. A second netmail area, in Squish format. Messages get the 'private' bit
  877. by default and I use my AKA 60:100/112 in this netmail area.
  878.  
  879. LocalArea "Bad_Msgs"       BAD_MSGS     C:\Squish\Msgs\Bad    -$
  880. LocalArea "Dupes"          DUPES        C:\Squish\Msgs\Dupes  -$
  881.  
  882. Here I add my bad_msgs and dupe areas. I like to see what's happening.
  883.  
  884. LocalArea "SysOp"          Sysop        d:\local\sysop        -$ -Ap
  885.  
  886. I define my SysOp area, default private messages.
  887.  
  888. EchoArea  "Contrast"       CONTRAST     d:\echo\CONTRAST      -$
  889.  
  890. An echomail area (my local points area, defined here as well as in
  891. squish.cfg, but I define it here, because I want it at the top of my
  892. area selection screen..)
  893.  
  894. EchoArea  "Points Delmare" POINTS.133   c:\squish\delmare -$ -P2:500/133.999
  895.  
  896. Another echomail area, where I use my AKA 2:500/133.999
  897.  
  898.  
  899. ┌────────────────────┐
  900. │ Working with timEd │
  901. └────────────────────┴───────────────────────────────────────────────
  902.  
  903. Well, if you changed timed.cfg to suit your needs, you can fire timEd
  904. up to see if it'll work.
  905. At startup, timEd shows an intro-screen where you can see what config
  906. files it is currently reading (timed.cfg, squish.cfg and areas.bbs).
  907.  
  908. When the configuration files are parsed, timEd will take you to the area
  909. selection screen. You should see a list of all areas you defined. The
  910. first area will be 'highlighted'.
  911.  
  912. If you want to check the intro-screen, you can specify the -p command
  913. line parameter. TimEd will then wait for you to press a key, before
  914. going to the Area Selection Screen (like: "timed.exe -p".)
  915.  
  916.  
  917. The Area Selection Screen.
  918. ==========================
  919.  
  920. Use the cursor keys (up and down), <page up>, <page down>, <home> and
  921. <end> to move around.
  922.  
  923. A quick way to find an area is 'speedsearch'. If you know the official
  924. areatag of the area you want to read, start typing that tag. TimEd will
  925. try to find the first areatag matching the characters you typed. The
  926. characters will also appear at the top of the screen. The 'speedsearch
  927. string' will disappear (and be cleared) when you press a 'movement key'
  928. (like 'cursor up').
  929.  
  930. If you press CTRL-L, timEd will try to find a next match for the
  931. speedsearch string (this may come in handy if you have an area called OS2,
  932. but also one called OS2.028, and they are not close to each other in the
  933. arealist).
  934.  
  935. To start reading messages in an area, press <ENTER> or the right arrow
  936. key. TimEd will then enter that area and display the last read message.
  937.  
  938. On the area selection screen, the following keys are also active:
  939.  
  940. ALT-S : scan areas for new mail. This will determine the number of
  941.         messages present in every area, and the number of new (unread)
  942.         messages.
  943.  
  944. ALT-P : personal mail scan. This will scan all areas for mail addressed
  945.         TO: you or your alias (as defined in timed.cfg).
  946.  
  947.         While viewing a found message, nearly all 'normal' functions are
  948.         available to you (like R)eply, T)urbo reply, P)rint, W)rite to file
  949.         etc).
  950.  
  951.         Some keys (like cursor right and left) continue the search. You can
  952.         interrupt the search at any time by pressing <ESC>.
  953.  
  954. ALT-X : Exit timEd. If specified in timed.cfg, an 'echotoss.log' file
  955.         will be written at this point.
  956.  
  957. ALT-L : Enter the area, and go directly into the 'List mode', showing
  958.         a list of message headers.
  959.  
  960. ALT-J : Jump to DOS.
  961.  
  962. F1    : Show a helpscreen with available functions.
  963.  
  964.  
  965. The Message Reading Screen.
  966. ===========================
  967.  
  968. When you enter an area, the lastread message will be shown.
  969.  
  970. You can scroll the message body (if it doesn't fit on one screen
  971. entirely) using cursor keys (up and down) and <page up>, <page down>,
  972. <home> and <end>.
  973.  
  974. <ESC> or ALT-A will take you back to the area selection screen.
  975.  
  976.  
  977. Moving around in a message area.
  978. --------------------------------
  979.  
  980. Press the right arrow key to go to the next message, the left arrow key
  981. to go to the previous message.
  982.  
  983. Ctrl-<END> will take you to the last message in the area.
  984.  
  985. Ctrl-<HOME> will take you to the first message in the area.
  986.  
  987. Type a number to go to a specific message. A small box will pop up,
  988. where you can edit the number of the message to jump to.
  989.  
  990. Ctrl <left> will go to the 'original' message, i.e. the message that the
  991. current message is a reply to. If you are reading a reply and don't know
  992. anymore what the original message was about, use this.
  993.  
  994. Ctrl <right> will go to the reply to this message (if there are any
  995. replies already). If there is more than one reply, a list will be shown
  996. (with the name of the sender of the reply) so you can choose one.
  997.  
  998. The availability of replies and 'the original' is shown at the top of
  999. the message screen. An example:
  1000.  
  1001. -=-
  1002.  
  1003. Date : 20-10-'92, 21:38     1744
  1004. From : Jan Terpstra                               2:280/216.0
  1005. To   : Hans Boelens
  1006. Subj : Negeer dit!
  1007. ─────────────────────────────────────────────────────────────────────────────
  1008.  
  1009. -=-
  1010.  
  1011. Here you can see, that this message is a reply to message 17, and that
  1012. there is a reply to this message, number 44. If there would have been
  1013. more replies (and you used a reply linker that is capable of specifying
  1014. 'multiple uplinks', a feature that is only available for Squish style
  1015. message bases) there would have been more numbers after the '44'.
  1016.  
  1017.  
  1018. Entering Messages.
  1019. ------------------
  1020.  
  1021. In order to generate a message, you must use an external editor. TimEd
  1022. will use the text generated by this editor to create a message.
  1023.  
  1024. Using an external editor has one big problem: most editors put a 'hard
  1025. return' at the end of *every* line, not just on the lines where the user
  1026. actually pressed <ENTER>.
  1027.  
  1028. In Fidonet, 'hard returns' should only be present at the end of a
  1029. *paragraph*. The actual formatting (word wrapping) of the paragraph
  1030. should be done by the message reader, according to the current screen
  1031. size (usually, the screen has lines of 80 characters, but that is
  1032. certainly not always the case!).
  1033.  
  1034. Placing a 'hard return' at the end of every line (at postion 80), would
  1035. only use the first 80 characters of a line, even on a 132 character
  1036. display! Unfortunately, there are quite a lot of programs that leave a hard
  1037. return at the end of every line anyway. Especially QWK readers are notorious
  1038. for that. It's quite a lot easier for the programmer though.
  1039.  
  1040. So, timEd has to strip 'hard returns'. It tries it's very best, but sometimes
  1041. fails miserably.
  1042.  
  1043. One of the 'rules' is, that timEd will strip the 'hard return', if it is
  1044. found at a postion *after* <length of line> - 20 (so on a 80 character
  1045. display, it would be 60). 'Hard returns' found after that position are
  1046. supposed to be the result of the 'word wrapping' feature of an editor
  1047. and are stripped.
  1048.  
  1049. There is an exception to this: if the *next* line is starting with a
  1050. <space> or one of the following characters: *-,. the 'hard return' will not
  1051. be stripped. Usually there is some formatted text (in the case of '*' and
  1052. '-' probably a list, in the case of a space it could also be a 'listing' of
  1053. some code for a programming language), so that will be left untouched.
  1054.  
  1055. There is a way to prevent timEd from 'intelligently' stripping 'hard
  1056. returns'. Usually it does what you want, but formatted text can be
  1057. awfully screwed up, when the individual lines exceed 60 characters in
  1058. length (for example Binkley logfiles :-). TimEd will then strip 'hard
  1059. returns' making a mess of your nicely formatted logfile or C-listing.
  1060.  
  1061. There are 2 methods to prevent timEd from stripping 'hard returns':
  1062.  
  1063. - Forcing a 'hard return' for one line:
  1064.  
  1065.     Put a ~ at the end of a line. The ~ will be replaced with a 'hard
  1066.     return'.
  1067.  
  1068. - Forcing 'hard returns' for a sequence of lines:
  1069.  
  1070.     Put ~~ at the beginning of a line (rest of line should be empty!) to
  1071.     start, and another one at the end.
  1072.     All of the text between those two lines will get a 'hard return' at the end
  1073.     of the line. The lines with the ~~ at the beginning will be stripped
  1074.     from the text.
  1075.  
  1076. Examples:
  1077.  
  1078. This line will certainly have a 'hard return' added to it.~
  1079.  
  1080. Now look at my nicely formatted logfile:
  1081.  
  1082. -=-
  1083.  
  1084. ~~
  1085. + 23 Sep 03:23:35 MAX  CPS: 231 (52751 bytes)  Efficiency: 96%
  1086. = 23 Sep 03:23:35 MAX  DL-Z C:\Files\Tekst\Contrast.Lzh
  1087. = 23 Sep 03:23:35 MAX  Free DL: reimbursed 227 seconds
  1088. = 23 Sep 03:23:35 MAX  Free DL: reimbursed 51 Kb
  1089. + 23 Sep 03:23:59 MAX  Jack Van Leeuwen off-line. Calls=16, Len=6, Today=6
  1090. : 23 Sep 03:24:00 MAX  End, v2.01 (5)
  1091.  
  1092. ~~
  1093. -=-
  1094.  
  1095. Keep this in mind, and experiment a bit. Just type some messages and check
  1096. the results after timEd read it back in.
  1097.  
  1098.  
  1099. With this knowledge, we can look at the commands that will let you enter
  1100. a message, but before that we'll look at the string editing functions.
  1101.  
  1102.  
  1103. String editing in timEd
  1104. =======================
  1105.  
  1106. In timEd, there are a few functions that let you edit strings. Some
  1107. examples inlcude generating a message header (TO: field, address,
  1108. subject) and the 'write message to file', where you have to enter a
  1109. filename.
  1110.  
  1111. All string editing functions use the same routine, where the following
  1112. keys are active:
  1113.  
  1114. Right arrow, lef arrow    : move left and right in string.
  1115. <end>, <home>             : go to the beginning or the end of the string.
  1116. <ctrl-left>, <ctrl-right> : jump to previous or next word.
  1117. <ctrl-end>                : delete string from cursor position to end.
  1118. Delete and backspace work as expected.
  1119. Press <INS> to toggle 'insert mode'.
  1120.  
  1121. And, very useful:
  1122.  
  1123. CTRL-Y : Delete entire string.
  1124.  
  1125.  
  1126. Selecting user name and address.
  1127. ================================
  1128.  
  1129. While you are in an area, there are two functions that you might want
  1130. to use:
  1131.  
  1132.  
  1133. CTRL-N : Pick one of the usernames defined (by the NAME keywords) in
  1134.          timEd.cfg. The name you pick will be used to enter new
  1135.          messages. It will be the default to use until you leave the
  1136.          message area.
  1137.  
  1138. CTRL-A : A fuction similar to CTRL-N, but to pick one of the defined
  1139.          ADRESSes.
  1140.  
  1141. You can also change name and or address while editing a header. By
  1142. default, timEd will put you in the TO: field when entering a message.
  1143. When you press 'cursor up', you will go to the TO: fields (the TO:
  1144. name and (if applicable) the TO: address).
  1145. You can now freely edit these fields, or press TAB to get a list of
  1146. the names/addresses (defined in timEd.cfg) to select from.
  1147.  
  1148.  
  1149. Now the other functions to use while you are reading a message:
  1150.  
  1151.  
  1152. ALT-E, E, <ins> : Enter message
  1153.  
  1154. This will let you create a new message in the current area. TimEd will
  1155. first let you edit the header, and will then spawn the editor, where you
  1156. can type in the message text. Save the text and exit the editor. You
  1157. will then come back in timEd, that will read your message and save it.
  1158.  
  1159. See also the section 'Creating netmail and file attaches'.
  1160.  
  1161.  
  1162. ALT-R, R, ALT-Q, Q : Reply to message
  1163.  
  1164. This will let you write a reply to the message that is currently shown
  1165. on the screen. TimEd will let you edit the header (press <ENTER> to
  1166. accept the defaults) and quote the entire message. Then the editor will
  1167. be spawned..
  1168.  
  1169.  
  1170. ALT-N, N : Reply other area
  1171.  
  1172. Create a reply, but select another area to put the reply in. This will
  1173. first take you to the Area Selection Screen, where you can choose the
  1174. area.
  1175.  
  1176.  
  1177. ALT-O, O : Reply 'followup'
  1178.  
  1179. This will let you quote the message text and add your comments, but will
  1180. not address the message to the writer of that message, but to the person
  1181. to whom the current message is addressed to.
  1182.  
  1183. So, when someone writes a message to John, and you use ALT-O on that
  1184. message, it will be quoted and also addressed to John. You can then add
  1185. "I want that too!", or something similar :-)
  1186.  
  1187.  
  1188. ALT-T, T : Reply, accept defaults
  1189.  
  1190. This is the equivalent of ALT-R, but you will go directly to the editor,
  1191. accepting the defaults for the TO: and Subj: fields.
  1192. This is a fast way to reply, for lazy people with little time :-)
  1193.  
  1194.  
  1195. ALT-C, C : Change message
  1196.  
  1197. This will let you change the message (header + body).
  1198.  
  1199.  
  1200. CTRL-H   : Change header
  1201.  
  1202. This will you change the header of a message only.
  1203.  
  1204.  
  1205. CTRL-U   : Unreceive message.
  1206.  
  1207. This turns *off* the 'received' bit. Be sure *not* to fool around with
  1208. message anymore, but move to the next message (or out of the area, or
  1209. whatever) immediately, or the 'received' bit will be set again before you
  1210. know it :)
  1211.  
  1212.  
  1213. ALT-D, D, <del> : Delete message
  1214.  
  1215. Delete the current message. TimEd will first ask a confirmation.
  1216.  
  1217.  
  1218. ALT-W, W : Write to file
  1219.  
  1220. Write the current message to a file. TimEd will ask for a filename to
  1221. write to. You can also put (for example) LPT1, PRN as the 'filename' to
  1222. send output to the printer.
  1223.  
  1224.  
  1225. ALT-P, P : Print message (hardcopy).
  1226.  
  1227. This will send the current message to your printer, as defined by the
  1228. 'Printer' keyword in timEd.cfg. If no 'Printer' statement was found in
  1229. timEd.cfg, it will default to LPT1.
  1230.  
  1231.  
  1232. ALT-M, M : Move, copy, forward
  1233.  
  1234. This will let you move, copy or forward the current message to another
  1235. area.
  1236. It will first show you the Area Selection Screen, where you can pick the
  1237. destination area of your choice.
  1238.  
  1239. The 'forward' option will let you edit the header (TO: and Subj:
  1240. fields) before saving the message.
  1241.  
  1242.  
  1243. ALT-V, V, ALT-K, K : Toggle kludges
  1244.  
  1245. This will let you toggle the display of kludges (for this purpose, that
  1246. also includes SEEN-BY lines). The default (at startup) can be set in
  1247. timEd.cfg, using the 'showkludges' keyword.
  1248.  
  1249.  
  1250. ALT-J, J : Jump to DOS.
  1251.  
  1252. This will let you 'shell' to DOS. Type 'exit' to return to timEd.
  1253.  
  1254.  
  1255. ALT-I, I : Message & Area info
  1256.  
  1257. This will show a pop-up box with some info about the current message and
  1258. the current area.
  1259.  
  1260. This will also show the 'setting' for a Squish style area: the maximum
  1261. number of messages to keep in this area, the number of messages to skip when
  1262. purging and the number of days to keep messages.
  1263. From within timEd, you can set these parameters by pressing 'C' and editing
  1264. the values to whatever you like.
  1265.  
  1266.  
  1267. '+'   : Go to next area with new mail.
  1268.  
  1269. Pressing '+' will move you to the next area that has new mail. Using this you
  1270. can quickly go from area to area, without going through the 'Area selection
  1271. screen'.
  1272. If timEd cannot find a 'next area with new mail', it will drop you on the
  1273. 'Area selection screen'.
  1274.  
  1275.  
  1276. '-'   : Go to previous area with new mail.
  1277.  
  1278. This function is similar to '+', but moves to the previous area with new
  1279. mail.
  1280.  
  1281.  
  1282. F1 : Help
  1283.  
  1284. This shows a short help-screen.
  1285.  
  1286.  
  1287. ALT-X : Exit timEd
  1288.  
  1289. This will return you to the DOS prompt. If defined in timEd.cfg, an
  1290. echotoss.log file will be generated at this time.
  1291.  
  1292.  
  1293. ALT-H, H : Edit 'Hello' strings
  1294.  
  1295. This will show a pop-up box, where you can edit the 'hellostring', the
  1296. 'rephello' string, your 'signoff' and 'origin line' FOR THE CURRENT AREA
  1297. ONLY.
  1298.  
  1299. With this you can customize your setup on a per-area basis!
  1300.  
  1301. The edited strings will be saved in the message area, so timEd can
  1302. continue using them at a later time as well. Whenever timEd detects a
  1303. 'custom setup' file *in a message area*, it will use the strings
  1304. contained in that file (*only* in *that* message area), instead of the
  1305. defaults defined in timEd.cfg.
  1306.  
  1307. TimEd saves the info in:
  1308. <areaname>.SQT for Squish areas, and
  1309. timed.dat      for *.MSG areas.
  1310.  
  1311. The origin in saved in:
  1312. <areaname>.SQO for Squish areas, and
  1313. origin         for *.MSG areas.
  1314.  
  1315.  
  1316. ALT-U, U: Utils (Message base maintenance).
  1317. -------------------------------------------
  1318.  
  1319. For *.MSG areas, the only option is to renumber. TimEd will start a
  1320. batchfile called renum.bat, with one parameter: the message dir for this
  1321. area (like: renum.bat c:\binkley\netmail). In this batchfile you can
  1322. call your favorite renumber program (maybe Bob Hartman's renum, I think the
  1323. batch should then be "renum -R %1"), and maybe run other programs (like
  1324. scanbld.exe for Max sysops) or touch semaphores or whatever.
  1325.  
  1326. For Squish areas, there are four choices: Pack, Re-Index, Fix and Inspect.
  1327. This will call SQpack, SQreidx, SQfix and SQinfo respectively (with the
  1328. message area as parameter). See to it that these programs are in your
  1329. path. The programs are *not* called with the extension .EXE, so you
  1330. *could* place a file called (for example) sqpack.bat in your path instead,
  1331. and call SQpack/386/DPMI instead :)
  1332.  
  1333. Some considerations:
  1334.  
  1335. If you have an area stuffed away in a directory that has a dot in it (like
  1336. c:\msgs\sysop.028\sqdfile), SQpack will get confused (only SQpack, not the
  1337. other utils) and think you specified an area.dat file on the commandline.
  1338. This will happen if you would do this:
  1339.  
  1340. SQpack c:\msgs\sysop.028\sqdfile
  1341.  
  1342. .. which is exactly what timEd does :) So it won't work for such areas.
  1343.  
  1344. Apart from that, if you run OS/2 and the OS/2 version of SQpack etc, you
  1345. can't use this, as it is/seems to be impossible to execute OS/2 programs
  1346. from a DOS box.
  1347.  
  1348.  
  1349. CTRL-F : File request generation.
  1350. ---------------------------------
  1351.  
  1352. When you press CTRL-F, timEd will try to find filenames in a message
  1353. (usually seen in 'file announcement' messages for SDS etc).
  1354.  
  1355. Unlike other message editors, timEd does not (even try to) support specific
  1356. 'announcement programs' by recognizing their 'formats'. There are many
  1357. programs out there, and modern ones even allow you to design your own
  1358. format. I think it's a waste of (programming) effort and code (size/speed)
  1359. to try and support them.
  1360.  
  1361. It just looks for strings that look like filenames. This search is
  1362. 'extension driven': timEd simply looks for file extensions :) Currently
  1363. recognized:
  1364.  
  1365. char *exts[] = {"arj", "zip", "arc", "pak", "lzh", "sqz", "com", "exe",
  1366.                 "lha", "zoo", "txt", "sdn", "sda", "ans", "jpg", "gif",
  1367.                 "tar", "" };
  1368.  
  1369. When you press ctrl-f, timEd will try to find those extensions in the
  1370. message, and a list with all filenames will pop up on the right hand side
  1371. of your screen. You can scroll through the list, select files with <enter>
  1372. or <space>, select all with '+', unselect all with '-', accept the current
  1373. selection with <ctrl-enter>. Just as with a file attach.
  1374.  
  1375. Limited message scrolling is still available: press <ctrl-pgup> and
  1376. <ctrl-pgdn> to move the message (in case you don't even recognize the
  1377. filenames, and the descriptions are somewhere else in the message).
  1378.  
  1379. In case timEd missed a filename, or if you simply want to add one not
  1380. listed in the message (like FILES), press <INS> and type the name of the
  1381. file. It will be added to the list, already selected.
  1382.  
  1383. If timEd can't find any files, it'll show a list with only "FILES" on it.
  1384. You can also abuse this to just request FILES from someone that seems to
  1385. have an interesting BBS (but is not announcing files in that message).
  1386.  
  1387. When you press <ctrl-enter> to accept, timEd will take you to the area
  1388. selection screen, where you can pick an appropriate (netmail) area. It'll
  1389. then let you edit the message attributes (maybe add crash or something), and
  1390. after you press <enter> it'll write the file request message(s) for you
  1391. (empty, we don't want to write senseless "automatic file request"
  1392. messages).
  1393.  
  1394. Watch your phone bill! :-)
  1395.  
  1396.  
  1397. The List Mode.
  1398. --------------
  1399.  
  1400. ALT-L, L : List headers, normal format.
  1401. ALT-B, B : List headers, no TO: field, broad subject field.
  1402.  
  1403. This will show you a list of message headers in the current area.
  1404.  
  1405. Use <cursor up>, <cursor down>, <page up>, <page down>, <home> and <end>
  1406. to move around through the list.
  1407.  
  1408. Press <ENTER> or <cursor right> to read the highlighted message.
  1409.  
  1410. <ESC> will take you back to the current message before you pressed ALT-L.
  1411.  
  1412.  
  1413. Other keys that are active in 'list mode':
  1414.  
  1415. <Space> : mark highlighted message
  1416.  
  1417. + : mark range of msgs
  1418. - : unmark range of msgs
  1419.  
  1420. This will show a pop-up box, where you can enter the range of messages
  1421. to be marked.
  1422.  
  1423. ALT-D, D, <del> : kill all marked msgs.
  1424. ALT-M, M        : move all marked msgs to another area.
  1425. ALT-C, C        : copy marked msgs to another area.
  1426. ALT-W, W        : write marked msgs to file.
  1427. ALT-P, P        : print marked messages.
  1428. F1              : Show a short help screen.
  1429. ALT-J, J        : Jump to DOS.
  1430. ALT-S, S        : Switch between 'broad' and normal subject width (for
  1431.                   Usenet messages).
  1432.  
  1433.  
  1434. TimEd's Find feature.
  1435. =====================
  1436.  
  1437. ALT-F, F : Find message
  1438.  
  1439. This will show a small pop-up screen, where you can set the criteria for
  1440. the search. It looks like this:
  1441.  
  1442.  
  1443. ╔════════════════════════════════════════════════════════════╗
  1444. ║                                                            ║
  1445. ║  ┌─ Areas: ───────────────┐┌─ Search for: ──────── in: ─┐  ║
  1446. ║  │ () Current Area only  ││ ░░░░░░░░░░░░░░░░░░░░       │  ║
  1447. ║  │ ( ) All Areas          ││                            │  ║
  1448. ║  └────────────────────────┘│                            │  ║
  1449. ║  ┌─ Messages: ────────────┐│                            │  ║
  1450. ║  │ () From Lastread      ││                            │  ║
  1451. ║  │ ( ) All Messages       ││                            │  ║
  1452. ║  └────────────────────────┘│                            │  ║
  1453. ║                            │                            │  ║
  1454. ║                            │                            │  ║
  1455. ║                            │                            │  ║
  1456. ║                            └────────────────────────────┘  ║
  1457. ║                                                            ║
  1458. ║                    Press F1 for help                       ║
  1459. ║                                                            ║
  1460. ╚════════════════════════════════════════════════════════════╝
  1461.  
  1462.  
  1463. Give up to 10 strings to search for. This will be an 'OR' search, so if
  1464. *any* of the strings is found in the indicated location(s) [ F)rom field,
  1465. T)o field, S)ubject, B)ody ] the message will be shown. You can give more
  1466. than one location, so for example..
  1467.  
  1468. intel    SB
  1469.  
  1470. .. is legal (search for 'intel' in Subject and Body).
  1471.  
  1472. The search is _not_ case-sensitive.
  1473.  
  1474. Searching will start when CTRL-ENTER is pressed. ALT-R clears
  1475. all strings entered.
  1476.  
  1477. Use the <ENTER> and TAB keys to move around.
  1478.  
  1479. When a match is found, the message will be shown, and if any matches are
  1480. found in the message body, the lines with the match will be 'highlighted',
  1481. using the colour specified by 'color_msgspecial' in timEd.cfg.
  1482.  
  1483. While viewing a found message, nearly all 'normal' functions are available
  1484. to you (like R)eply, T)urbo reply, P)rint, W)rite to file etc).
  1485.  
  1486. Some keys (like cursor right and left) continue the search. You can
  1487. interrupt the search at any time by pressing <ESC>.
  1488.  
  1489.  
  1490. Creating netmail and file attaches.
  1491. ===================================
  1492.  
  1493. This is a special section on the netmail area. Netmail is different from
  1494. echomail in many ways, and timEd behaves differently when you enter
  1495. netmail.
  1496.  
  1497. While in the netmail area, you will also have to enter a fidonet
  1498. address, in addition to the name of the recipient.
  1499.  
  1500. Timed can help you in several ways, especially if a Version 7 nodelist, a
  1501. FrontDoor style nodelist or a fidouser.lst format list is present.
  1502.  
  1503.  
  1504. Changing your name and address.
  1505. -------------------------------
  1506.  
  1507. First of all, when timEd lets you edit a header, it will put you in the To:
  1508. name field. The From: name (your name) and address (your address) will
  1509. already be entered, using the defaults that are active for that area.
  1510.  
  1511. If you used CTRL-A (change address) or CTRL-N (change name) just before
  1512. entering a message, timEd will use that name/address.
  1513.  
  1514. While editing a header, however, you can still edit that info. Just press
  1515. <cursor up> and you will go to the origination address and name fields.
  1516. There you can edit them to be whatever you want, or press TAB to pick one
  1517. of the names/addresses you entered in timEd.cfg.
  1518.  
  1519.  
  1520. Entering a (TO:) name:
  1521. ----------------------
  1522.  
  1523. When you enter a name (or part of the last name) in the TO: field and
  1524. press <ENTER>, timEd will try to find that name in the nodelist and when
  1525. found it will show a pop-up box with name(s) and address(es) it found.
  1526.  
  1527. TimEd will try to find all matches to the string you typed. So typing
  1528. 'essen' might give you both 'Gerard van Essen' and 'Martin Essenburg'.
  1529. If more than one match is found, timEd will show a list with matches
  1530. and let you scroll through the list.
  1531. TimEd will stop searching when more than 50 matches are found.
  1532.  
  1533. If you then press <ENTER>, timEd will fill in the selected address for
  1534. you.
  1535.  
  1536. This function works for all supported formats: Version 7, FrontDoor
  1537. nodelist and fidouser.lst.
  1538.  
  1539. TimEd will first look for a fidouser.lst style list. If such a list is not
  1540. present, or if no match is found in this list, it will try the FD
  1541. nodelist. If still no match is found, or if there is no FD nodelist at
  1542. all, it will try the Version 7 nodelist.
  1543.  
  1544. The fidouser.lst is searched first. Since you can have more than one
  1545. nodelist format present, you could use this to make a short list of people
  1546. you regularly send mail to. Looking through this short list can be done
  1547. very fast, of course. If nothing is found, timEd will go to one of the
  1548. other nodelists (if present).
  1549.  
  1550. This is only interesting if your system is very slow, of course. Even on a
  1551. 10 Mhz 286 (28ms HD) both V7 and FD nodelists are *very* fast. But your
  1552. mileage might differ.
  1553.  
  1554. The above is valid when entering *new* netmail. When replying to a
  1555. message, or when changing a message, timEd will see that an address is
  1556. already present, and it will normally only check if that node (the
  1557. ADDRESS) exists. If it doesn't, timEd will display "Unknown Address".
  1558.  
  1559. Additionally, a 'fresh' name lookup will be done if you change the TO:
  1560. name field, or if you press F2 when you're in the TO: name field.
  1561.  
  1562.  
  1563. Entering an address:
  1564. --------------------
  1565.  
  1566. In the TO: field, you can also enter an address (!). Again, timEd will
  1567. try to locate that address in the nodelist and try to fill the name in
  1568. for you.
  1569.  
  1570. There are several shortcuts when entering an address. When you don't
  1571. type in a 3D/4D address, timEd will try to fill in the missing parts with
  1572. the default from *your* address.
  1573.  
  1574. An example:
  1575.  
  1576. My address is 2:281/527.
  1577.  
  1578. If I now enter: 281/1, so with a missing ZONE number, timEd will fill in
  1579. *my* zone number (that's 2, so the address becomes 2:281/1).
  1580.  
  1581. In this case, I could even have entered: 1, because then timEd would have
  1582. filled in net 281 (my NET) and zone 2 (my ZONE), producing the wanted
  1583. address (2:281/1).
  1584.  
  1585. I can also enter .1, (so missing zone, net and node info) and timEd will
  1586. fill in my zone (2), my net (281) and my node (527), producing
  1587. 2:281/527.1.
  1588.  
  1589. After 'expanding' the address, timEd will try to find it in the
  1590. nodelist.
  1591.  
  1592. This function only supports the Version 7 and FrontDoor nodelists.
  1593. For the fidouser.lst lists, this is not possible.
  1594.  
  1595.  
  1596. AKA matching.
  1597. =============
  1598.  
  1599. This option is interesting if you have more than 1 address. If you set the
  1600. 'AKAmatching' keyword in timEd.cfg to 'Yes', timEd will try to find the
  1601. most appropriate address to use when writing a message.
  1602.  
  1603. Say, for example, that you have two addresses: 2:281/527 and 60:100/112.
  1604.  
  1605. If you write a messages to 2:500/133, you probably want to use your
  1606. 2:281/527 address.
  1607. If you write a message to 60:100/1, you probably want to use your
  1608. 60:100/112 address.
  1609.  
  1610. In this case, timEd would try to find the address (AKA) that 'matches' the
  1611. destination address best.
  1612.  
  1613. It first looks for a matching zone, and if more than one match is found,
  1614. it'll try to find an address where both 'zone' and 'net' match. If there is
  1615. still more than one match after that, it will just take the first match.
  1616.  
  1617. This is always active (in the netmail area): when writing a new message, a
  1618. reply, or changing a message.
  1619.  
  1620. If timEd selects an address different from the address that was currently
  1621. used (so if anything changed), it will say so ("AKA matched") just below
  1622. the addresses on the screen.
  1623.  
  1624. If you want to force it at a certain moment, press F2 when on the TO:
  1625. address field.
  1626.  
  1627. TimEd will stop matching the AKA's, as soon as you changed your address
  1628. manually. So if you don't agree with timEd's AKA matching in a certain
  1629. situation, just manually change it (while editing the header, you can
  1630. 'cursor up' to the from: address field) to what you want it to be, and
  1631. timEd will leave it at that.
  1632. It will not match AKA's anymore after you did that. (Of course, when you
  1633. enter another new message after that, the game will start again :)
  1634.  
  1635.  
  1636. Generating a file-request message.
  1637. ----------------------------------
  1638.  
  1639. When you enter a message with the 'file request' attribute, timEd will ask
  1640. if you want to include any text in the message. If you send a file request
  1641. message with a body that is empty, it will usually be automatically killed
  1642. on the destination system.
  1643. This way the SysOp of the destination system won't have to wade through
  1644. all these useless messages that consists of one line only ('This is an
  1645. automatic file request').
  1646.  
  1647.  
  1648. Generating a file-attach message.
  1649. ---------------------------------
  1650.  
  1651. TimEd will try to detect whether you entered a path specification in the
  1652. 'subject' field, and set the file-attach bit automatically if you did.
  1653. Of course you can also set the file attach bit manually.
  1654.  
  1655. TimEd will then check whether the filename(s) entered on the subject line
  1656. exist, and if you entered a wildcard and more than one match is found,
  1657. timEd will show a list with matching files. You can then 'tag' the files
  1658. you want to attach.
  1659. If you tag more files than fit on the subject line, timEd will generate
  1660. extra messages.
  1661.  
  1662. A file-attach list may look like this:
  1663.  
  1664. -=-
  1665.  
  1666. Date : 25-10┌───────────────────────────────────────────────────────┐a Kill Loc
  1667. From : Gerar│ Current filespec: c:\files\c\t*.*                     │
  1668. To   : ROn v└───────────────────────────────────────────────────────┘
  1669. Subj : c:\files\c\t*.*
  1670. ────────────────────────────────────────────────────────────────────────────────
  1671. ┌──────────────────────────────────────────────────────────────────────────────┐
  1672. │  TABX.C            3 K                                                       │
  1673. │  TADV2DEM.ARJ     53 K                                                       │
  1674. │  TC1TUTOR.ARJ    105 K                                                       │
  1675. │  TC2TUTOR.ARJ     83 K                                                       │
  1676. │  TDT-2.ZIP       268 K                                                       │
  1677. │  TDT-3.ZIP       249 K                                                       │
  1678. └──────────────────────────────────────────────────────────────────────────────┘
  1679.  
  1680. -=-
  1681.  
  1682. You can now 'tag' files with <ENTER> or <SPACE>, move around with
  1683. <cursor up> and <cursor down> etc, and accept the currently tagged files
  1684. with <CTRL-ENTER>.
  1685.  
  1686. You can select all files in one action by pressing '+', and un-select them
  1687. all by pressing '-'.
  1688.  
  1689. This process will be repeated for all entered file specifications.
  1690.  
  1691.  
  1692. TimEd's CC: feature.
  1693. ====================
  1694.  
  1695. TimEd can also make 'carbon copies' of netmail messages you write. It
  1696. can happen that you want to send an exact copy of a message to someone
  1697. other than the original recipient of the message.
  1698. For example, when I release a new beta version, I should have to write the
  1699. same netmail message for every beta tester.
  1700.  
  1701. Now say I want to write the same message to Kasper Kwant, ROn van der
  1702. Nagel and Frank Troost.
  1703. I would enter the message, addressing it to Kasper Kwant, and on the
  1704. first line of the message I would write:
  1705.  
  1706. cc: ROn van.der.Nagel, Frank Troost
  1707.  
  1708. When the message is saved, a copy would be generated for both ROn and
  1709. Frank.
  1710.  
  1711. Rules for the cc: line(s):
  1712.  
  1713. * It must start on the first line of the message.
  1714.  
  1715. * If all names do not fit on one line, proceed on the next line, and put
  1716.   cc: in front of it again.
  1717.  
  1718. * You can use a full name (it will be looked up in the nodelist), a
  1719.   'macro' (it will be expanded) or an address (it will be looked up in
  1720.   the nodelist). This is exactly the same as you can enter at the TO:
  1721.   prompt of a 'normal' netmail message.
  1722.   Nodelist lookup is a bit different, though: timEd will only look for
  1723.   the first match to a certain name, and use that to generate the
  1724.   message.
  1725.  
  1726.   In addition, if you type a full name which is *not* present in the
  1727.   nodelist (or if you don't want timEd to look in the nodelist, for
  1728.   whatever reason, like speed), you can also specify *both* name and
  1729.   address, separated by a '#', like this:
  1730.   Gerard van Essen#2:281/527
  1731.  
  1732.   And finally, if you regularly send CC:'s to the same bunch of people,
  1733.   you can put their names, macro's or addresses in a file, one per line,
  1734.   and specify that filename in the cc: line, like this:
  1735.   <c:\timed\names.cc
  1736.   The '<' is chosen as this looks a bit like 'redirection' in DOS :-)
  1737.  
  1738.   The contents of such a file could be:
  1739.  
  1740.   -=-
  1741.   Kasper Kwant
  1742.   ROn van.der.Nagel
  1743.   Frank Troost
  1744.   pietje#2:281/527.29
  1745.   -=-
  1746.  
  1747. Of course, you can combine all this. A full example (let's say that I
  1748. have a macro for my HUB, called 'hub'):
  1749.  
  1750. cc: 1, hub, Kasper Kwant, <names.cc
  1751. cc: ROn van.der.Nagel, .23
  1752.  
  1753. ■ '1' will be expanded to myzone:mynet/1 (in this case 2:281/1)
  1754. ■ 'Kasper Kwant' will be looked up in the nodelist.
  1755. ■ The file 'names.cc' will be read and all persons listed in that file
  1756.   will get a copy.
  1757. ■ ROn van.der.Nagel will be looked up in the nodelist.
  1758. ■ 2:281/527.23 will get a copy too.
  1759.  
  1760. All CC: messages that are generated by timEd will be marked "kill/sent", so
  1761. you won't have lots of copies of the same message in your netmail area. The
  1762. attributes of the original message will be left untouched, of course.
  1763.  
  1764.  
  1765. Please don't abuse this feature by sending junk mail to everyone..
  1766.  
  1767.  
  1768. ┌───────────────────────────────────────────────┐
  1769. │ Reading messages 'gated' from Usenet/Internet │
  1770. └───────────────────────────────────────────────┴─────────────────────────
  1771.  
  1772. Some consideration was also given to people reading messages that
  1773. originally came from Usenet/Internet 'newsgroups'.
  1774.  
  1775.  
  1776. FSC-0035
  1777. ========
  1778.  
  1779. TimEd supports the 'Replyto' and 'ReplyAddr' kludges as outlined in
  1780. FSC-0035 (Fidonet Technical Specification - a proposal, actually). This is
  1781. used for netmail replies. If you read gated Use/Internet messages that have
  1782. this kludge (Fredgate can generate them), this will automatically address
  1783. the netmail reply to your UUCP gate and put a TO: line at the top of your
  1784. message.
  1785.  
  1786.  
  1787. 'Broad' message L)ist display.
  1788. ==============================
  1789.  
  1790. For Use/Internet newsgroups the standard L)ist display is far from optimal:
  1791. there, every message has 'All' in the TO: field (put there by the UUCP <->
  1792. Fido gate).
  1793.  
  1794. TimEd has two L)ist modes, a 'normal' one, and a 'broad subject line' one
  1795. (you get it with Alt-B when reading a message). The latter has (as one
  1796. would expect) a much broader Subject displayed, the TO: field is entirely
  1797. zapped in that mode.
  1798.  
  1799. While in the L)ist mode, one can switch between the two styles with ALT-S
  1800. (from S)witch..)
  1801.  
  1802.  
  1803. ┌───────────────────────────┐
  1804. │ Multitasking/File locking │
  1805. └───────────────────────────┴────────────────────────────────────────
  1806.  
  1807. Screen handling.
  1808. ----------------
  1809.  
  1810. TimEd uses direct screen writes (either to the physical screen, or to the
  1811. DESQview virtual screen). There is no special code to prevent 'snow' on
  1812. older CGA displays.
  1813.  
  1814.  
  1815. Performance.
  1816. ------------
  1817.  
  1818. When timEd is idle, it is (only) waiting for a keypress, it does nothing
  1819. else (like maintaining a clock) in the meantime. Since it gets this
  1820. keypress through a very standard DOS call, DESQview will give timEd no
  1821. processor time at all while timEd is waiting.
  1822.  
  1823. OS/2 didn't really like it, strangely enough, so whenever OS/2 is detected
  1824. (DOS version > 9), timEd will give up timeslices to OS/2.
  1825.  
  1826.  
  1827. File locking/sharing.
  1828. ---------------------
  1829.  
  1830. File locking is only active if 1) share is detected (int 2F, sub 1000h),
  1831. *and* 2) timEd successfully locked a file in the timEd directory (either the
  1832. current dir or the one specified by the -c command-line switch).
  1833.  
  1834. Windows seems to always return 'True' for a share installation check (even
  1835. without share loaded), but without share.exe, locking fails anyway. This
  1836. made timEd quite confused. (Me too, btw).
  1837.  
  1838. I do not know how networks behave, but if share detection or the locking
  1839. test fails on your workstation, there will be *no locking* done by timEd
  1840. (or the MSGAPI, actually).
  1841.  
  1842. So, if you want locking, keep the above in mind.
  1843.  
  1844. Anyone who knows more about this stuff is encouraged to share his wisdom
  1845. with me :)
  1846.  
  1847.  
  1848. ┌─────────────────────────┐
  1849. │ Command line parameters │
  1850. └─────────────────────────┴──────────────────────────────────────────
  1851.  
  1852. TimEd knows 2 command line parameters:
  1853.  
  1854. -c
  1855.  
  1856. Specify the directory where the config file (and helpfile) can be found,
  1857. like:
  1858.  
  1859. timed.exe -cC:\Bbs\timed\
  1860.  
  1861. And -p, to let timEd pause at the intro screen (so you can check what
  1862. config files were parsed by timEd). Like:
  1863.  
  1864. timed.exe -p
  1865.  
  1866. Of course, you can combine both switches:
  1867.  
  1868. timed.exe -p -cC:\Bbs\timed
  1869.  
  1870.  
  1871. ┌────────────────────────┐
  1872. │ TimEd exit errorlevels │
  1873. └────────────────────────┴──────────────────────────────────────────
  1874.  
  1875. TimEd can exit with several useful errorlevels:
  1876.  
  1877.    No mail entered    :   0
  1878.    Netmail entered    :   1
  1879.    Echomail entered   :   2
  1880.    Local mail entered :   4
  1881.  
  1882.    If more than one type is entered the numbers are added:
  1883.  
  1884.    Net + Echo         :   3
  1885.    Net + Local        :   5
  1886.    Echo + Local       :   6
  1887.    Net + Echo + Local :   7
  1888.  
  1889.    Error: 254
  1890.  
  1891.  
  1892. You can trap these errorlevels in a batchfile, and scan echomail or pack
  1893. netmail (or both) based on the errorlevel.
  1894.  
  1895.  
  1896. ┌──────────┐
  1897. │ Warnings │
  1898. └──────────┴─────────────────────────────────────────────────────────
  1899.  
  1900. Some things you should know about timEd:
  1901.  
  1902.  
  1903. ■ TimEd doesn't really like large messages. Messages larger than 60
  1904.   Kb may cause very strange behaviour (anything is possible).
  1905.  
  1906.  
  1907. ┌───────────┐
  1908. │ Technical │
  1909. └───────────┴────────────────────────────────────────────────────────
  1910.  
  1911. TimEd is written using Turbo C++ (second edition), and makes extensive
  1912. use of Scott Dudley's MSGAPI (thanks Scott!).
  1913.  
  1914. It was developed on a 10 Mhz 286 (most of the time), and for a while on
  1915. a 386-40 running OS/2 (also running my BBS) but even OS/2 couldn't
  1916. protect the BBS from my programming skills (...), causing lockups and
  1917. even reboots, so I went back to the 286..
  1918.  
  1919. If someone is really enthusiastic about this program: I would very much
  1920. like to use a Watcom compiler, please buy me one! :-)
  1921.  
  1922.  
  1923. ┌───────────────────┐
  1924. │ TimEd source code │
  1925. └───────────────────┴────────────────────────────────────────────────
  1926.  
  1927. Not available.
  1928.  
  1929.  
  1930. ┌───────────────────────┐
  1931. │ Contacting the author │
  1932. └───────────────────────┴────────────────────────────────────────────
  1933.  
  1934. You can reach me in several ways:
  1935.  
  1936. FidoNet: 2:281/527
  1937. Usenet : art@contrast.wlink.nl
  1938.  
  1939. My BBS:
  1940.  
  1941. Contrast BBS
  1942. 31-70-3234903
  1943. V32bis/V42bis
  1944.  
  1945. Or just send me a letter, or postcard:
  1946.  
  1947. Gerard van Essen
  1948. Leharstraat 67
  1949. 2551 LB  Den Haag
  1950. The Netherlands, Europe
  1951.  
  1952.  
  1953. <End of beta documentation>
  1954.